<!DOCTYPE html
          PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html   xmlns   = "http://www.w3.org/1999/xhtml">
<head>
<link rel="STYLESHEET" href="filtersdk.css" type="text/css" />
<title>Compiling AviSynth Plugins</title>
</head>
<BODY>

<div id="body">

<h1><a style="text-decoration:none">
    CompilingAviSynthPlugins</a>
    	<p>
	</h1>

<h3>Step by step instructions <a href="http://www.avisynth.org/CompilingAvisynth">(by WilbertD to T0B1A5)</a></h3>

<p>&lt;WilbertD> Open VC++</p>

<p>&lt;[T0B1A5]> ok</p>

<p>&lt;WilbertD> file->new->win32 dynamic link library</p>

<p>&lt;[T0B1A5]> wil: empty dll or simple</p>

<p>&lt;WilbertD> empty dll</p>

<p>&lt;WilbertD> go to the project tab -> add to project -> files</p>

<p>&lt;[T0B1A5]> ok</p>

<p>&lt;WilbertD> Here you can add existing cpp or h (headers). Add avisynth.h.</p>

<p>&lt;WilbertD> after that you copied avisynth.h to your folder.</p>

<p>&lt;[T0B1A5]> uh ok </p>

<p>&lt;WilbertD> go to the project tab -> add to project -> new</p>

<p>&lt;WilbertD> select C++ source file, and give it a name.</p>

<p>&lt;WilbertD>  go to the project tab -> add to project -> new -> select C/C++ header file (if you are going to use one) -> give it a name.</p>

<p>&lt;[T0B1A5]> done</p>

<p>&lt;WilbertD> Go to Build -> set active configuration -> select the release build.</p>

<p>&lt;WilbertD> Save your workspace: file -> save workspace.</p>

<p>&lt;[T0B1A5]> ok</p>

<p>&lt;WilbertD> Finally, code your source/header files ...</p>

<p>&lt;[T0B1A5]> ...</p>

<h3>How to debug Avisynth plugins </h3>

<p><a href="http://forum.doom9.org/showthread.php?t=107216">Donald Graft 'neuron2' wrote:</a></p>

<p>Debugging Avisynth filter DLLs is easy; don't be scared by it. I can tell you how in VC++ 6. :)</p>

<p>1. Build/Active configuration -> Debug.</p>

<p>2. Project/Settings/Debug/General/Executable for debug session -> browse to a version of VirtualDub.exe and specify that.</p>

<p>3. Project/Settings/Debug/Additional DLLs -- browse to the filter DLL in the Debug directory.</p>

<p>4. Make an AVS script that loads and uses your filter -- be sure to load the Debug version!</p>

<p>5. Build the code. Set breakpoints as required.</p>

<p>6. Build/Start debug/Go. VirtualDub will execute. Open the AVS script in that VirtualDub instance.</p>

<h3>Back to <a href="FilterSDK.htm">FilterSDK</a></h3>

<p><kbd>$Date: 2007/01/04 11:33:49 $<br>
Original version of this document at <a href="http://www.avisynth.org/CompilingAvisynth">http://www.avisynth.org/CompilingAvisynth</a></kbd></p>
</BODY>
</html>